<%@page contentType="text/html" %>
<%@page pageEncoding="UTF-8" %>

<%@taglib prefix="f" uri="http://java.sun.com/jsf/core" %>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html" %>
<%@taglib prefix="a4j" uri="http://richfaces.org/a4j" %>
<%@taglib prefix="rich" uri="http://richfaces.org/rich" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Goodwill - Личный кабинет</title>
    <link rel="stylesheet" href="resources/css/main.css"/>
    <link rel="stylesheet" href="resources/css/stylesheet.css"/>
    <link rel="stylesheet" href="resources/css/clients.css"/>
    <style type="text/css">
    </style>
</head>
<body>
<f:view>
<h:form>
    <jsp:include page="ClientHeader.jsp"/>

    <rich:panel styleClass="caption_pane1">
        <h:graphicImage value="/resources/img/house.png"/>
        <h:outputText value="Личный кабинет" styleClass="caption1"/>
    </rich:panel>

    <rich:panel styleClass="caption_pane">

        <rich:panel styleClass="room_pane">
            <f:facet name="header">
                <h:panelGroup>
                    <h:outputText value="Заказы" styleClass="b"/>
                </h:panelGroup>
            </f:facet>

            <%-- История заказов --%>
            <h:panelGroup styleClass="" layout="block" style="text-align:left">
                <a4j:commandLink action="#{ClientRegistrationBean.newOrder}"
                                 reRender="goodsInOrder, tblOrders" style="font-size:110%"
                                 oncomplete="document.location='ClientGoodsPage.jsf'">
                    <h:graphicImage value="/resources/img/spreadsheet_24x24.png"/>
                    <h:outputText value="Создать новый заказ"/>
                </a4j:commandLink>

                <h:panelGroup style="margin-top:15px;width:85%">
                    <h:outputText value=" Ниже представлены <b>последние 5</b> заказов" escape="false"
                                  style="color:red"/>
                    <rich:dataTable id="tblOrders" value="#{ClientRegistrationBean.orders}" var="order" rows="20"
                                    rowKeyVar="row" style="width:85%">
                        <f:facet name="header">
                            <h:outputText value="Последние заказы"/>
                        </f:facet>
                        <rich:column style="white-space:nowrap;width:1%">
                            <f:facet name="header">
                                <h:outputText value="#"/>
                            </f:facet>
                            <h:outputText value="#{order.id}" style="font-weight:bold;color:dimgray;"/>
                        </rich:column>
                        <rich:column style="white-space:nowrap;width:1%">
                            <f:facet name="header">
                                <h:outputText value="Дата создания"/>
                            </f:facet>
                            <h:outputText value="#{order.creationDate}" converter="TimestampConverter"/>
                        </rich:column>
                        <rich:column style="text-align:right;white-space:nowrap;width:1%">
                            <f:facet name="header">
                                <h:outputText value="Стоимость"/>
                            </f:facet>
                            <h:outputText value="#{order.sum} р."/>
                        </rich:column>
                        <rich:column style="text-align:right;white-space:nowrap;width:1%">
                            <f:facet name="header">
                                <h:outputText value="Стоимость доставки"/>
                            </f:facet>
                            <h:outputText value="#{order.deliverySum} р."/>
                        </rich:column>
                        <rich:column style="text-align:right;white-space:nowrap;width:1%">
                            <f:facet name="header">
                                <h:outputText value="Кол-во позиций"/>
                            </f:facet>
                            <h:outputText value="#{order.positionsCount} шт."/>
                        </rich:column>
                        <rich:column style="white-space:nowrap;width:1%">
                            <f:facet name="header">
                                <h:outputText value="Статус"/>
                            </f:facet>
                            <h:outputText value="#{order.orderStateAsString}"/>
                        </rich:column>
                        <rich:column style="white-space:nowrap;width:1%">
                            <h:panelGroup>
                                <a4j:commandLink action="#{ClientRegistrationBean.activeOrder}" id="editlink"
                                                 oncomplete="document.location='ClientOrderItemPage.jsf'">
                                    <a4j:actionparam name="selectOrder" assignTo="#{ClientRegistrationBean.orderId}"
                                                     value="#{order.id}"/>
                                    <h:graphicImage value="resources/img/shoppingcart_32.gif" width="16"/>
                                </a4j:commandLink>
                                <rich:toolTip for="editlink">
                                    <span>
                                        <strong>Сделать данный заказ активным.</strong><br/>
                                        При нажатии на эту кнопку данный заказ окажется в разделе Корзина.<br/>
                                        Если он еще не оформлен (а, например, предварительно сохранен), его можно будет оформить.<br/>
                                        Если этот заказ уже был оформлен ранее, его можно будет только просмотреть (состав, количество позиций) в разделе Корзина.
                                    </span>
                                </rich:toolTip>
                            </h:panelGroup>

                            <h:panelGroup rendered="#{order.orderStateIsPreSaved}">
                                <a4j:commandLink action="#{ClientRegistrationBean.deleteOrder}" id="removelink"
                                                 reRender="tblOrders">
                                    <a4j:actionparam name="removeOrder" assignTo="#{ClientRegistrationBean.orderId}"
                                                     value="#{order.id}"/>
                                    <h:graphicImage value="resources/img/delete.gif"/>
                                </a4j:commandLink>
                                <rich:toolTip for="removelink" value="Удалить заказ"/>
                            </h:panelGroup>
                        </rich:column>
                    </rich:dataTable>
                </h:panelGroup>
                <h:panelGroup styleClass="" layout="block" style="margin-top:15px;">
                    <a4j:commandLink value="Показать все заказы #{SessionBean.ordersCount}"
                                     action="#"
                                     ajaxSingle="true"
                                     oncomplete="#{rich:component('modalOrders')}.show()"
                                     style="font-size:110%;">
                        <a4j:actionparam name="begdate" assignTo="#{SessionBean.ordersFilter.begDate}" value="#{null}"/>
                        <a4j:actionparam name="enddate" assignTo="#{SessionBean.ordersFilter.endDate}" value="#{null}"/>
                    </a4j:commandLink>
                </h:panelGroup>

                <a4j:region>
                    <h:panelGroup styleClass="" layout="block" style="margin-top:15px;">
                        <h:outputText value="Показать заказы с "/>
                        <rich:calendar id="calBegdate" value="#{ClientRegistrationBean.showOrdersByDateBegdate}" locale="RU"
                                       datePattern="dd.MM.yyyy" style="width:100px;margin-left:2px;"/>
                        <h:outputText value=" по " style="margin-left:2px;"/>
                        <rich:calendar id="calEnddate" value="#{ClientRegistrationBean.showOrdersByDateEnddate}" locale="RU"
                                       datePattern="dd.MM.yyyy" style="width:100px"/>
                        <a4j:commandLink value="показать"
                                         action="#{ClientRegistrationBean.showOrdersByDate}"
                                         limitToList="true"
                                         process="calBegdate, calEnddate"
                                         reRender="modalOrders"
                                         oncomplete="#{rich:component('modalOrders')}.show()"
                                         style="font-size:110%;"/>
                    </h:panelGroup>
                </a4j:region>
            </h:panelGroup>
        </rich:panel>

        <%-- Долг --%>
        <rich:panel styleClass="room_pane">
            <f:facet name="header">
                <h:outputText value="Долг" styleClass="b"/>
            </f:facet>
            <h:panelGrid columns="2" cellpadding="0" cellspacing="0" columnClasses="dleft,dright">
                <h:outputText value="Банк" styleClass="b"/>
                <h:outputText value="#{ClientRegistrationBean.client.debtBank} р."/>
                <h:outputText value="Касса" styleClass="b"/>
                <h:outputText value="#{ClientRegistrationBean.client.debtCash} р."/>
                <h:outputText value="Общий" styleClass="b"/>
                <h:outputText
                        value="#{ClientRegistrationBean.client.debtBank+ClientRegistrationBean.client.debtCash} р."/>
            </h:panelGrid>
        </rich:panel>

        <%-- Персонаяльная информация --%>
        <rich:panel styleClass="room_pane">
            <f:facet name="header">
                <h:outputText value="Персональная информация" styleClass="b"/>
            </f:facet>
            <%--<h:panelGrid columns="2" cellpadding="0" cellspacing="0" columnClasses="dleft,dright">--%>
            <%--<h:outputText styleClass="b" value="Клиентская группа" style="font-size:110%"/>--%>
            <%--<h:outputText value="#{ClientRegistrationBean.client.clientGroup.name}"style="font-size:110%"/>--%>
            <%--</h:panelGrid>--%>
            <h:panelGroup layout="block" styleClass="" style="text-align:left;">
                <h:outputText value="#{ClientRegistrationBean.client.infoText}" escape="false"
                              style="text-align:left;margin-top:5px"/>
            </h:panelGroup>
        </rich:panel>

        <%-- Общая информация --%>
        <rich:panel styleClass="room_pane">
            <f:facet name="header">
                <h:outputText value="Общая информация" styleClass="b"/>
            </f:facet>
            <h:panelGroup layout="block" styleClass="" style="text-align:left;">
                <h:outputText value="#{ClientRegistrationBean.clientGenericInfo}" escape="false"
                              style="text-align:left;margin-top:5px"/>
            </h:panelGroup>
        </rich:panel>

        <%-- Личная информация --%>
        <rich:panel styleClass="room_pane">
            <f:facet name="header">
                <h:panelGroup>
                    <h:outputText value="Личная информация" styleClass="b"/>
                    <a4j:commandLink value="изменить"
                                     styleClass="fwhite"
                                     action="#"
                                     style="padding-left:3px;font-size:80%;font-weight:normal"
                                     oncomplete="#{rich:component('notifyPersonalInfo')}.show();">
                        <a4j:actionparam name="mail" assignTo="#{UsersBean.userMail}"
                                         value="#{ClientRegistrationBean.clientManagerMail}"/>
                    </a4j:commandLink>
                </h:panelGroup>
            </f:facet>

            <h:panelGrid columns="2" cellpadding="0" cellspacing="0" columnClasses="cl_l,cl_r">
                <h:outputText value="Название компании" styleClass="b"/>
                <h:outputText value="#{ClientRegistrationBean.client.companyName}"/>

                <h:outputText value="Вид деятельности" styleClass="b"/>
                <h:outputText value="#{ClientRegistrationBean.client.companyType}"/>

                <h:outputText value="Специализация" styleClass="b"/>
                <h:outputText value="#{ClientRegistrationBean.client.speciality}"/>

                <h:outputText value="Юридический адрес" styleClass="b"/>
                <h:outputText value="#{ClientRegistrationBean.client.addressLaw}"/>
            </h:panelGrid>
        </rich:panel>
    </rich:panel>


    <jsp:include page="ClientFooter.jsp"/>
</h:form>

<%-- -------------- Список заказов -------------- --%>
<rich:modalPanel id="modalOrders" autosized="true" width="350">
    <f:facet name="header">
        <h:panelGroup>
            <h:outputText value="Список заказов"/>
        </h:panelGroup>
    </f:facet>
    <f:facet name="controls">
        <a4j:commandLink onclick="#{rich:component('modalOrders')}.hide();return false;">
            <h:graphicImage value="/resources/img/close.png"/>
        </a4j:commandLink>
    </f:facet>
    <a4j:outputPanel ajaxRendered="true">
        <h:form>
            <rich:dataTable id="tblOrders2" value="#{ClientRegistrationBean.ordersList}" var="order" rows="20"
                            rowKeyVar="row" style="margin-top:15px;width:85%">
                <rich:column style="white-space:nowrap;width:1%">
                    <f:facet name="header">
                        <h:outputText value="#"/>
                    </f:facet>
                    <h:outputText value="#{order.id}" style="font-weight:bold;color:dimgray;"/>
                </rich:column>
                <rich:column style="white-space:nowrap;width:1%">
                    <f:facet name="header">
                        <h:outputText value="Дата создания" converter="TimestampConverter"/>
                    </f:facet>
                    <h:outputText value="#{order.creationDate}"/>
                </rich:column>
                <rich:column style="text-align:right;white-space:nowrap;width:1%">
                    <f:facet name="header">
                        <h:outputText value="Стоимость"/>
                    </f:facet>
                    <h:outputText value="#{order.sum} р."/>
                </rich:column>
                <rich:column style="text-align:right;white-space:nowrap;width:1%">
                    <f:facet name="header">
                        <h:outputText value="Стоимость доставки"/>
                    </f:facet>
                    <h:outputText value="#{order.deliverySum} р."/>
                </rich:column>
                <rich:column style="text-align:right;white-space:nowrap;width:1%">
                    <f:facet name="header">
                        <h:outputText value="Кол-во позиций"/>
                    </f:facet>
                    <h:outputText value="#{order.positionsCount} шт."/>
                </rich:column>
                <rich:column style="white-space:nowrap;width:1%">
                    <f:facet name="header">
                        <h:outputText value="Статус"/>
                    </f:facet>
                    <h:outputText value="#{order.orderStateAsString}"/>
                </rich:column>
                <rich:column style="white-space:nowrap;width:1%">
                    <h:panelGroup>
                        <a4j:commandLink action="#{ClientRegistrationBean.activeOrder}" id="editlink"
                                         oncomplete="document.location='ClientOrderItemPage.jsf'">
                            <a4j:actionparam name="selectOrder" assignTo="#{ClientRegistrationBean.orderId}"
                                             value="#{order.id}"/>
                            <h:graphicImage value="resources/img/shoppingcart_32.gif" width="16"/>
                        </a4j:commandLink>
                        <rich:toolTip for="editlink" value="Сделать данный заказ активным"/>
                    </h:panelGroup>

                    <h:panelGroup rendered="#{order.orderStateIsPreSaved}">
                        <a4j:commandLink action="#{ClientRegistrationBean.deleteOrder}" id="removelink"
                                         reRender="tblOrders">
                            <a4j:actionparam name="removeOrder" assignTo="#{ClientRegistrationBean.orderId}"
                                             value="#{order.id}"/>
                            <h:graphicImage value="resources/img/delete.gif"/>
                        </a4j:commandLink>
                        <rich:toolTip for="removelink" value="Удалить заказ"/>
                    </h:panelGroup>
                </rich:column>
            </rich:dataTable>
            <rich:datascroller for="tblOrders2" renderIfSinglePage="false"/>
        </h:form>
    </a4j:outputPanel>
</rich:modalPanel>

<%-- -------------- Уведомить об изменениях в персональных данных -------------- --%>
<rich:modalPanel id="notifyPersonalInfo" autosized="true" width="350">
    <f:facet name="header">
        <h:panelGroup>
            <h:outputText value="Уведомить об изменениях персональных данных"/>
        </h:panelGroup>
    </f:facet>
    <f:facet name="controls">
        <a4j:commandLink onclick="#{rich:component('notifyPersonalInfo')}.hide();return false;">
            <h:graphicImage value="/resources/img/close.png"/>
        </a4j:commandLink>
    </f:facet>
    <a4j:outputPanel>
        <h:form>

            <h:inputHidden value="#{UsersBean.userMail}"/>
            <h:outputText value="#{UsersBean.userMail}"/>

            <h:panelGroup layout="block" style="background-color:whitesmoke;">
                <h:outputText value="Напишите в письме, какие персональные данные изменились."/><br>
                <h:outputText value="Письмо будет направлено Вашему менеджеру.."/>
            </h:panelGroup>

            <h:panelGroup layout="block" style="margin-top:15px;">
                <h:panelGrid columns="2" cellpadding="0" cellspacing="0" columnClasses="dleft top,dright top">
                    <h:outputText value="Текст"/>
                    <rich:editor width="500" height="150" id="edit" viewMode="source"
                                 value="#{UsersBean.userMailText}"/>
                </h:panelGrid>
            </h:panelGroup>

            <h:panelGrid columns="2" styleClass="full" columnClasses="butLeft,butRight" cellspacing="0" cellpadding="0">
                <a4j:commandButton value="Отправить"
                                   action="#{UsersBean.sendTextMail}"
                                   styleClass="btnsz"
                                   oncomplete="if(#{!UsersBean.hasFacesErrors}) #{rich:component('notifyPersonalInfo')}.hide();"/>
                <a4j:commandButton value="Отмена"
                                   styleClass="btnsz"
                                   onclick="#{rich:component('notifyPersonalInfo')}.hide();return false;"/>
            </h:panelGrid>
        </h:form>
    </a4j:outputPanel>
</rich:modalPanel>

</f:view>
</body>
</html>
